/*
 * @Author: Quinn
 * @Date: 2023-05-19 11:40:35
 * @LastEditors: 叽歪小Q
 * @Description:
 */
const formatUrl = (url, data, config) => {
    return `${url}/${data.id}`
}

const getList = [
    '/driverGarage/orderRecord', //司机编码查订单
    '/aiChatLog/queryAiChatLogList', //ai 查询单条历史对话记录
    '/driverGarage/carTypeEnum', //司机列表-车型类型
    '/driverGarage/provincialEnum', //司机列表-行政区域
    '/driverGarage', //司机列表
    '/task/getTaskList', //获取任务
    '/assign/uploadCad', //上传cad
    '/template/getTaskTemplateList', //获取模板列表
    '/company/getCompanyList', //获取公司列表
    '/company/getCompanyPersonList', //获取公司负责人列表
    '/role/roleList', //获取角色列表
    '/user/userList', //获取用户信息列表
    '/company/getCompanyPersonList', //查看公司成员
    '/assign/getAreaList', //查看仓库列表
    '/assign/getUserCompany', //查询施工负责人和监理人 flag1 监理人 flag2 负责人
    '/evaluate/getEvaluateByEvaluateId', //根据验收id查看详情
    '/evaluate/getEvaluateListByTaskId', //根据监理任务id查监理记录
    '/LateReason/getLateReasonByTaskId', //根据任务id查逾期原因
    '/appraise/getApprasiseByTaskId', //根据任务id查用户评论
    '/payment/getPaymentByPaymentId', //根据任务id查回款凭证
    '/message/getSystemMessageList', //查看系统消息
    '/message/getMessageList', //查看个人消息
    '/materials/getWechatOrderMaterialsDetail', //查看材料明细
    '/camera/getVideoUrl', //查看海康标准流监控
    '/assign/getCADDetail', //查看cad解析详情
    '/role/getRoleList', //角色列表
    '/role/getAuthorityListByRoleId', //查看权限
    '/role/getAuthorityList', //查看角色权限
    '/wechat/deleteWechatOrderById',
    '/dataDetail/selectIndexData', //首页数据看板十个汇总表数据
    '/dataDetail/selectInventoryAlarmList', //首页库存告警列表
    '/change/changeList', //库存变更记录
    '/dataDetail/selectFinanceData', //首页数据汇总
    '/procure/materials', //采购单材料和分类 用于操作入库
    '/area/areaList', // 地区列表
    '/procure/procureList', // 采购单列表
    '/procure/procurePaymentList', // 采购单付款记录
    '/user/info', // 获取用户基本信息
    '/user/userList', // 获取用户列表
    '/role/roleList', // 角色列表
    '/warehouse/warehouseList', // 仓库列表
    '/authority/authorityList', // 权限点列表
    '/role/roleAuthority', // 用户角色权限点
    '/supplier/supplierList', // 供应商列表
    '/material/materialList', // 材料列表
    '/check/checkList', //盘点单列表
    '/classification/materialList', //材料列表 新增区分一级分类和材料
    '/inventory/inventoryList', // 库存列表
    '/inOut/inOutList', // 出库记录
    '/inventory/inventoryAlarmList', // 告警列表
    '/afterSale/afterSaleList', // 售后列表
    '/afterSale/afterSaleDetail', // 售后明细
    '/sale/saleList', // 销售列表
    '/sale/saleMaterials', // 销售明细
    '/materialTransfer/materialTransferList', // 调货列表
    '/materialTransfer/transferPaymentMaterials', // 调货明细
    '/finance/financeList', // 费用报销
    '/finance/financeStatistics', // 财务列表
    '/afterSale/afterSaleReasons', // 售后原因
    '/classification/classificationList', //分类列表
    '/procure/procureMaterials', //采购单入库明细
    '/warehouse/warehousePullDownList', //不分页的仓库列表
    '/change/selectChangeDetailList', //变更明细
    '/sale/weChatSaleList', //用户下单列表
    '/supplier/supplierContractList',
    '/supplier/supplierCredentialList',
    '/supplier/supplierWarrantyList',
    '/sale/weChatSaleMaterials', //小程序订单查看材料
    '/talent/getRoleId', //工种
    '/talent/getTalentInfo', //获取人才详情
    '/pcAfterSale/deleteAfterSale', //删除售后
    '/pcAfterSale/getAfterSaleType', //售后类型
    '/appraise/getAssignTaskInfo', //查询序列号是否被绑定
    '/firmCamera/getLiveAddress', //查询序列号是否被绑定
    '/appraise/getAiMessage', //抓拍推送列表
    '/firmCamera/getListAllCamera', //根据序列号获取通道列表
    '/firmCamera/getFirmCameraAccessToken', //企业内部连锁开-token获取
    '/firmCamera/yunVideoStart2', //企业内部连锁开-token获取
    '/patrol/getLargeVo', //获取巡查大类
    '/patrol/getModifyPatrolTemplateDto', //
    '/patrol/getPatrolTemplateConfig', //
    '/patrol/getModifyTermDto', //
    '/patrol/getStoreAllCamera',
    '/patrol/getCameraCapture',
    '/patrol/StorePatrolDataVo',
    '/patrol/getCorrectionRecordVo',
    '/inspectionTask/getInspectionTask',
    '/inspectionTask/disable',
    '/inspectionTask/getAllAssignTaskList',
    '/inspectionTask/getAllPictureList',
    '/inspectionTask/getAutoPatrolConfigList',
    '/inspectionTask/getAllPatrolPerson',
    '/inspectionTask/deleteAutoPatrol',
    '/inspectionTask/getAutoPlanStatistics',
    '/inspectionTask/getAutoPlanStatisticsCount',
    '/patrol/getPatrolLargeTermProblemTop',
    '/inspectionTask/getAutoPlanDetailStatistics',
    'inspectionTask/getAutoPlanDetailStatisticsCount',
    '/acceptance/getSupplierTypeVo',
    '/budget/getSupplierTypeVo',
    '/budget/getSupplierTaskVo',
    '/assign/getCadLogList',
    '/company/getOtherCompanyList',
    '/company/getManagerList',
    '/company/getSupplierTypeInfo', //公司类型列表
    '/assign/getUserList',
    '/assign/getBrandPartyVo',
    '/assign/getMapStoreVo',
    '/store/getBrandPartyVoById',
    '/store/getFranchiseeByName',
    '/franchisee/getFranchiseeList',
    '/franchisee/getFranchiseeList',
    '/franchisee/deleteFranchisee',
    '/budget/getSupplierTypeVo',
    '/store/getBrandCompanyList',
    '/store/getBrandPartyList',
    '/frozen/getReason',
    '/assign/getTaskProgressVo',
    '/assign/getProblemList',
    '/storeManager/getStoreManagerList',
    '/storeManager/deleteFranchisee',
    '/camera/getAreaCameraList',
    '/camera/getAreaAllCamera',
]
const postList = [
    '/after/updateAfterConfirmCompletion',
    '/assign/approvalCad',
    '/after/getAssignTaskAfterVo',
    '/storeManager/updateFranchisee',
    '/storeManager/addFranchisee',
    '/frozen/addFrozen',
    '/frozen/updateFrozenState',
    '/frozen/getFrozenList',
    '/store/getDataBoard',
    '/store/getStartStoreList',
    '/store/getStoreFinanceList',
    '/assign/addAssignTaskNew',
    '/assign/updateAreaId',
    '/assign/startWork',//项目经理开工
    '/assign/updateConfirmTaskStatusDto',//所有供应商确认订单
    '/aiChatLog/deleteAiChatLog', //删除ai聊天对话
    '/ai/service', //ai 发送消息
    '/store/add',
    '/franchisee/addFranchisee',
    '/franchisee/updateFranchisee',
    '/store/update',
    '/store/delStoreById',
    '/budget/updatePaymentUrl',
    '/budget/updatePreSettlementSpecialistState',
    '/budget/addSupplierTaskSettlement',
    '/assign/addCadLog',
    '/assign/updateGoodsShelvesTime',
    '/store/getStoreVo',
    '/budget/addSupplierTaskBudget',
    '/contract/startSeparate',
    '/contract/getAllContractsPayVo',
    '/patrol/getPatrolLargeTop',
    '/patrol/getPatrolLargeTermProblemTop',
    '/patrol/getPatrolTermTop',
    '/patrol/getPatrolOverviewData',
    '/patrol/getTodoCount',
    '/patrol/updateIsCorrection',
    '/patrol/getTodoVo',
    '/patrol/getRectificationApprovalVo',
    '/inspectionTask/addAutoPatrolConfig',
    '/inspectionTask/addInspectionTask',
    '/patrol/getPatrolRecordDetailsVo',
    '/inspectionTask/deleteTask',
    '/patrol/getPatrolRecordVo',
    '/patrol/getStorePatrolRecordVo',
    '/patrol/getPatrolStoreVo',
    '/patrol/addPatrolRecord',
    '/patrol/addPatrolTemplateLargeTerm',
    '/patrol/updateTermInfo',
    '/patrol/deleteTerm',
    '/patrol/deleteLarge',
    '/patrol/addProblem',
    '/patrol/deleteProblem',
    '/patrol/updateProblemInfo',
    '/patrol/updatePatrolTemplateState',
    '/patrol/updateLargeName', //修改大类名称
    '/patrol/updatePatrolTemplateInfo', //
    '/patrol/addPatrolTemplateLarge', //巡店添加大类
    '/patrol/addPatrolTemplateDto', //巡店创建模板
    '/patrol/getPatrolTemplateVo', //巡店列表
    '/contract/uploadNoSignContract', //上传合同
    '/appraise/updateAssignTaskSerialNumber', //解绑摄像头
    '/assign/updateAssignTaskAiSerialNumber', //绑定摄像头
    '/pcAfterSale/getPCAfterSaleList', //获取售后单列表
    '/pcAfterSale/confirmCompletion', //售后确认完成
    '/talent/insertPcTalent', //更新人才库
    '/talent/updateTalent', //编辑人才信息
    '/talent/insertPCProjectDetail', //更新项目信息
    '/talent/updateTalentInfoIsBanned', //更新人才库
    '/talent/approveTalentInfo', //更新人才库
    '/talent/getTalentInfoList', //人才库列表
    '/talent/deleteTalentInfoByUserId', //人才库删除
    '/new/cad/parse', //cad图片解析
    '/wechat/outMaterialDelivery', //小程序订单出库
    '/wechat/getWechatOrderList', //查看小程序列表
    '/wechat/getClassificationList', //查看小程序材料
    '/task/updateTaskList', //删除任务 state == 0 则是删除
    '/task/addTaskList', //新增任务
    '/common/upload', // 图片上传
    '/user/login', // 账号密码登录
    '/user/addUser', // 新增用户
    '/user/deleteUser', // 删除用户
    '/user/userInfoUpdate', // 用户信息修改
    '/role/addRole', // 角色新增
    '/role/roleUpdate', // 角色修改
    '/role/roleDelete', // 角色删除
    '/warehouse/warehouseAdd', // 仓库新增
    '/warehouse/warehouseUpdate', // 仓库信息修改
    '/warehouse/warehouseDelete', // 仓库删除
    '/role/roleBindAuthority', // 角色权限绑定
    //分割线 //分割线 //分割线 //分割线 //分割线 //分割线 //分割线 //分割线 //分割线 //分割线 //分割线 //分割线
    '/template/addTaskTemplate', //添加任务模板
    '/template/updateTemplate', //修改任务模板
    '/company/addCompany', //添加公司信息
    '/company/addUserCompanyInfo', //绑定公司项目经理
    '/user/addUser', //添加用户账号
    '/user/userInfoUpdate', //添加用户账号
    '/assign/addAssignTask', //录入订单
    '/assign/getAssignTaskList', //录入订单
    '/assign/updateAssignTask', //修改订单
    '/message/addMessage', //发送消息
    '/assign/updateAssignTaskSerialNumber', //绑定摄像头序列号
    '/role/addRole', //添加角色
    '/role/assignAuthority', //分配权限

    '/sale/updateSaleStoreName', //销售订单修改门店名称
    '/sale/wechatSaleReject', //销售订单驳回
    '/sale/wechatSaleStatusUpdate', // 修改小程序订单提交状态
    '/sale/weChatSaleDelete', //删除小程序订单
    '/change/changeAdd', //新增库存变更记录
    '/change/updateStatus', //库存变更状态
    '/materialTransfer/materialTransferOut', //调货单出库
    '/sale/saleInfoUpdate', //更新销售订单
    '/procure/procureInfoUpdate', //更新采购订单
    '/procure/confirmPayment', //采购单确认收货
    '/sale/saleDelete', //报货单删除
    '/procure/procureDelete', //采购单删除
    '/procure/procureAdd', //新增采购单
    '/check/checkAdd', //新增盘点单
    '/check/updateStatus', //盘点状态修改
    '/classification/classificationUpdate', //修改材料分类名
    '/classification/classificationAdd', //新增材料分类
    '/classification/classificationDelete', //删除材料分类
    '/materialTransfer/materialTransferIn', // 调货单入库
    '/inventory/inventoryUpdate', // 调整阈值
    '/sale/saleAdd', // 报货单新增
    '/sale/saleUpdate', // 报货单编辑
    '/sale/saleRepeatAdd', // 报货单二次导入
    '/materialTransfer/materialTransferAdd', // 新增调货
    '/materialTransfer/materialTransferUpdate', // 编辑调货
    '/afterSale/afterSaleAdd', // 新增售后
    '/afterSale/afterSaleUpdate', // 更新售后
    '/finance/financeAdd', // 新增报销
    '/finance/financeUpdate', // 修改报销
    '/finance/financeStatusUpdate', //报销审核
    '/inOut/out', // 出库操作
    '/common/upload', // 图片上传
    '/procure/procureAdd', // 采购单新增
    '/procure/procurePaymentAdd', // 付款录入
    '/procure/procureUpdate', // 采购单修改
    '/procure/procurePaymentAdd', // 采购单付款录入
    '/procure/procureMaterialsIn', // 采购单入库
    '/user/login', // 账号密码登录
    '/user/addUser', // 新增用户
    '/user/deleteUser', // 删除用户
    '/user/userInfoUpdate', // 用户信息修改
    '/role/addRole', // 角色新增
    '/role/roleUpdate', // 角色修改
    '/role/roleDelete', // 角色删除
    '/warehouse/warehouseAdd', // 仓库新增
    '/warehouse/warehouseUpdate', // 仓库信息修改
    '/warehouse/warehouseDelete', // 仓库删除
    '/role/roleBindAuthority', // 角色权限绑定
    '/supplier/supplierAdd', // 供应商新增
    '/supplier/supplierUpdateStatus', //修改供应商状态
    '/supplier/supplierContractDelete',
    '/supplier/supplierCredentialDelete',
    '/supplier/supplierWarrantyDelete',
    '/supplier/supplierUpdate', // 供应商信息修改
    '/supplier/supplierDelete', // 供应商删除
    '/material/materialAdd', // 材料新增
    '/material/materialUpdate', // 材料信息修改
    '/material/materialDelete', // 材料删除
    '/inventory/InventoryAdd', //修改库存
    '/supplier/addSupplierContract', //录入合同
    '/supplier/addSupplierCredential', // 录入资质
    '/supplier/addSupplierWarranty', // 录入保证金
    '/finance/updateFinanceVouchers', // 费用报销修改凭证
    '/change/updateChangeVouchers', // 损坏列表修改凭证
    '/check/updateCheckInventoryVouchers', // 盘点列表修改凭证
    '/assign/updateDesignDrawing', //上传设计图
    '/assign/updateEndDrawing', //上传终图
    '/assign/updateBindProjectUserId', //上传终图
    '/user/logout', //上传终图
    '/img/fileImgUrl',
    '/assign/addProblem'
]

const initApi = (arr, method = 'get') => {
    const res = {}
    arr.forEach((url) => {
        const key = url
            .split('/')
            .filter((e) => e)
            .map((str, index) => {
                if (index > 0) return str.slice(0, 1).toUpperCase() + str.slice(1)
                return str
            })
            .join('')
        res[key] = {
            url,
            method,
        }
        if (method == 'post') res[key]['contentType'] = 'application/json'
    })
    // console.log(Object.keys(res));
    return res
}

export default {
    ...initApi(getList),
    ...initApi(postList, 'post'),
}
